﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace GraphicsFramework.Property
{
    public static class DefaultProperty
    {
        private static DrawProperty beam = new DrawProperty(new ColorProperty(255, 100, 100, 100), new ColorProperty(255, 100, 100, 100), 10, true);
        private static DrawProperty joint = new DrawProperty(new ColorProperty(255, 255, 255, 255), new ColorProperty(255, 100, 100, 100), 1, false);
        private static DrawProperty gridguide = new DrawProperty(new ColorProperty(255, 255, 255, 255), new ColorProperty(255, 0, 0, 255), 1, false);

        private static DrawProperty text = new DrawProperty(new ColorProperty(255, 0, 0, 0), new ColorProperty(255, 0, 0, 0), 1, false);
        private static DrawProperty node = new DrawProperty(new ColorProperty(255, 255, 255, 255), new ColorProperty(255, 0, 0, 0), 1, false);
        private static DrawProperty common = new DrawProperty(new ColorProperty(150, 100, 100, 220), new ColorProperty(255, 150, 150, 150), 1, true);
        private static DrawProperty selected = new DrawProperty(new ColorProperty(150, 100, 100, 100), new ColorProperty(255, 50, 50, 50), 1, true);
        private static DrawProperty selectedunscaled = new DrawProperty(new ColorProperty(255, 100, 100, 100), new ColorProperty(255, 50, 50, 50), 1, false);
        private static DrawProperty constructionline = new DrawProperty(new ColorProperty(255, 255, 255, 255), new ColorProperty(255, 0, 0, 0), 1, false, false, true);

        public static DrawProperty ConstructionLine
        {
            get { return DefaultProperty.constructionline; }
            set { DefaultProperty.constructionline = value; }
        }

        public static DrawProperty SelectedUnscaled
        {
            get { return DefaultProperty.selectedunscaled; }
            set { DefaultProperty.selectedunscaled = value; }
        }

        public static DrawProperty GridGuide
        {
            get { return gridguide; }
            set { gridguide = value; }
        }

        public static DrawProperty Joint
        {
            get { return joint; }
            set { joint = value; }
        }

        public static DrawProperty Beam
        {
            get { return beam; }
            set { beam = value; }
        }

        public static DrawProperty Selected
        {
            get { return selected; }
            set { selected = value; }
        }

        public static DrawProperty Common
        {
            get { return common; }
            set { common = value; }
        }

        public static DrawProperty Node
        {
            get { return node; }
            set { node = value; }
        }

        public static DrawProperty Text
        {
            get { return DefaultProperty.text; }
            set { DefaultProperty.text = value; }
        }
    }
}
